Termination w.r.t. Q of the following Term Rewriting System could not be shown:

Q restricted rewrite system:
The TRS R consists of the following rules:

isEmpty1(cons2(x, xs)) -> false
isEmpty1(nil) -> true
isZero1(0) -> true
isZero1(s1(x)) -> false
head1(cons2(x, xs)) -> x
tail1(cons2(x, xs)) -> xs
tail1(nil) -> nil
append2(nil, x) -> cons2(x, nil)
append2(cons2(y, ys), x) -> cons2(y, append2(ys, x))
p1(s1(s1(x))) -> s1(p1(s1(x)))
p1(s1(0)) -> 0
p1(0) -> 0
inc1(s1(x)) -> s1(inc1(x))
inc1(0) -> s1(0)
addLists3(xs, ys, zs) -> if9(isEmpty1(xs), isEmpty1(ys), isZero1(head1(xs)), tail1(xs), tail1(ys), cons2(p1(head1(xs)), tail1(xs)), cons2(inc1(head1(ys)), tail1(ys)), zs, append2(zs, head1(ys)))
if9(true, true, b, xs, ys, xs2, ys2, zs, zs2) -> zs
if9(true, false, b, xs, ys, xs2, ys2, zs, zs2) -> differentLengthError
if9(false, true, b, xs, ys, xs2, ys2, zs, zs2) -> differentLengthError
if9(false, false, false, xs, ys, xs2, ys2, zs, zs2) -> addLists3(xs2, ys2, zs)
if9(false, false, true, xs, ys, xs2, ys2, zs, zs2) -> addLists3(xs, ys, zs2)
addList2(xs, ys) -> addLists3(xs, ys, nil)

Q is empty.


QTRS
  ↳ DependencyPairsProof

Q restricted rewrite system:
The TRS R consists of the following rules:

isEmpty1(cons2(x, xs)) -> false
isEmpty1(nil) -> true
isZero1(0) -> true
isZero1(s1(x)) -> false
head1(cons2(x, xs)) -> x
tail1(cons2(x, xs)) -> xs
tail1(nil) -> nil
append2(nil, x) -> cons2(x, nil)
append2(cons2(y, ys), x) -> cons2(y, append2(ys, x))
p1(s1(s1(x))) -> s1(p1(s1(x)))
p1(s1(0)) -> 0
p1(0) -> 0
inc1(s1(x)) -> s1(inc1(x))
inc1(0) -> s1(0)
addLists3(xs, ys, zs) -> if9(isEmpty1(xs), isEmpty1(ys), isZero1(head1(xs)), tail1(xs), tail1(ys), cons2(p1(head1(xs)), tail1(xs)), cons2(inc1(head1(ys)), tail1(ys)), zs, append2(zs, head1(ys)))
if9(true, true, b, xs, ys, xs2, ys2, zs, zs2) -> zs
if9(true, false, b, xs, ys, xs2, ys2, zs, zs2) -> differentLengthError
if9(false, true, b, xs, ys, xs2, ys2, zs, zs2) -> differentLengthError
if9(false, false, false, xs, ys, xs2, ys2, zs, zs2) -> addLists3(xs2, ys2, zs)
if9(false, false, true, xs, ys, xs2, ys2, zs, zs2) -> addLists3(xs, ys, zs2)
addList2(xs, ys) -> addLists3(xs, ys, nil)

Q is empty.

Using Dependency Pairs [1,13] we result in the following initial DP problem:
Q DP problem:
The TRS P consists of the following rules:

ADDLISTS3(xs, ys, zs) -> ISZERO1(head1(xs))
ADDLIST2(xs, ys) -> ADDLISTS3(xs, ys, nil)
IF9(false, false, true, xs, ys, xs2, ys2, zs, zs2) -> ADDLISTS3(xs, ys, zs2)
ADDLISTS3(xs, ys, zs) -> IF9(isEmpty1(xs), isEmpty1(ys), isZero1(head1(xs)), tail1(xs), tail1(ys), cons2(p1(head1(xs)), tail1(xs)), cons2(inc1(head1(ys)), tail1(ys)), zs, append2(zs, head1(ys)))
ADDLISTS3(xs, ys, zs) -> INC1(head1(ys))
ADDLISTS3(xs, ys, zs) -> ISEMPTY1(ys)
ADDLISTS3(xs, ys, zs) -> HEAD1(ys)
ADDLISTS3(xs, ys, zs) -> HEAD1(xs)
ADDLISTS3(xs, ys, zs) -> TAIL1(ys)
ADDLISTS3(xs, ys, zs) -> APPEND2(zs, head1(ys))
P1(s1(s1(x))) -> P1(s1(x))
ADDLISTS3(xs, ys, zs) -> TAIL1(xs)
IF9(false, false, false, xs, ys, xs2, ys2, zs, zs2) -> ADDLISTS3(xs2, ys2, zs)
ADDLISTS3(xs, ys, zs) -> ISEMPTY1(xs)
APPEND2(cons2(y, ys), x) -> APPEND2(ys, x)
INC1(s1(x)) -> INC1(x)
ADDLISTS3(xs, ys, zs) -> P1(head1(xs))

The TRS R consists of the following rules:

isEmpty1(cons2(x, xs)) -> false
isEmpty1(nil) -> true
isZero1(0) -> true
isZero1(s1(x)) -> false
head1(cons2(x, xs)) -> x
tail1(cons2(x, xs)) -> xs
tail1(nil) -> nil
append2(nil, x) -> cons2(x, nil)
append2(cons2(y, ys), x) -> cons2(y, append2(ys, x))
p1(s1(s1(x))) -> s1(p1(s1(x)))
p1(s1(0)) -> 0
p1(0) -> 0
inc1(s1(x)) -> s1(inc1(x))
inc1(0) -> s1(0)
addLists3(xs, ys, zs) -> if9(isEmpty1(xs), isEmpty1(ys), isZero1(head1(xs)), tail1(xs), tail1(ys), cons2(p1(head1(xs)), tail1(xs)), cons2(inc1(head1(ys)), tail1(ys)), zs, append2(zs, head1(ys)))
if9(true, true, b, xs, ys, xs2, ys2, zs, zs2) -> zs
if9(true, false, b, xs, ys, xs2, ys2, zs, zs2) -> differentLengthError
if9(false, true, b, xs, ys, xs2, ys2, zs, zs2) -> differentLengthError
if9(false, false, false, xs, ys, xs2, ys2, zs, zs2) -> addLists3(xs2, ys2, zs)
if9(false, false, true, xs, ys, xs2, ys2, zs, zs2) -> addLists3(xs, ys, zs2)
addList2(xs, ys) -> addLists3(xs, ys, nil)

Q is empty.
We have to consider all minimal (P,Q,R)-chains.

↳ QTRS
  ↳ DependencyPairsProof
QDP
      ↳ DependencyGraphProof

Q DP problem:
The TRS P consists of the following rules:

ADDLISTS3(xs, ys, zs) -> ISZERO1(head1(xs))
ADDLIST2(xs, ys) -> ADDLISTS3(xs, ys, nil)
IF9(false, false, true, xs, ys, xs2, ys2, zs, zs2) -> ADDLISTS3(xs, ys, zs2)
ADDLISTS3(xs, ys, zs) -> IF9(isEmpty1(xs), isEmpty1(ys), isZero1(head1(xs)), tail1(xs), tail1(ys), cons2(p1(head1(xs)), tail1(xs)), cons2(inc1(head1(ys)), tail1(ys)), zs, append2(zs, head1(ys)))
ADDLISTS3(xs, ys, zs) -> INC1(head1(ys))
ADDLISTS3(xs, ys, zs) -> ISEMPTY1(ys)
ADDLISTS3(xs, ys, zs) -> HEAD1(ys)
ADDLISTS3(xs, ys, zs) -> HEAD1(xs)
ADDLISTS3(xs, ys, zs) -> TAIL1(ys)
ADDLISTS3(xs, ys, zs) -> APPEND2(zs, head1(ys))
P1(s1(s1(x))) -> P1(s1(x))
ADDLISTS3(xs, ys, zs) -> TAIL1(xs)
IF9(false, false, false, xs, ys, xs2, ys2, zs, zs2) -> ADDLISTS3(xs2, ys2, zs)
ADDLISTS3(xs, ys, zs) -> ISEMPTY1(xs)
APPEND2(cons2(y, ys), x) -> APPEND2(ys, x)
INC1(s1(x)) -> INC1(x)
ADDLISTS3(xs, ys, zs) -> P1(head1(xs))

The TRS R consists of the following rules:

isEmpty1(cons2(x, xs)) -> false
isEmpty1(nil) -> true
isZero1(0) -> true
isZero1(s1(x)) -> false
head1(cons2(x, xs)) -> x
tail1(cons2(x, xs)) -> xs
tail1(nil) -> nil
append2(nil, x) -> cons2(x, nil)
append2(cons2(y, ys), x) -> cons2(y, append2(ys, x))
p1(s1(s1(x))) -> s1(p1(s1(x)))
p1(s1(0)) -> 0
p1(0) -> 0
inc1(s1(x)) -> s1(inc1(x))
inc1(0) -> s1(0)
addLists3(xs, ys, zs) -> if9(isEmpty1(xs), isEmpty1(ys), isZero1(head1(xs)), tail1(xs), tail1(ys), cons2(p1(head1(xs)), tail1(xs)), cons2(inc1(head1(ys)), tail1(ys)), zs, append2(zs, head1(ys)))
if9(true, true, b, xs, ys, xs2, ys2, zs, zs2) -> zs
if9(true, false, b, xs, ys, xs2, ys2, zs, zs2) -> differentLengthError
if9(false, true, b, xs, ys, xs2, ys2, zs, zs2) -> differentLengthError
if9(false, false, false, xs, ys, xs2, ys2, zs, zs2) -> addLists3(xs2, ys2, zs)
if9(false, false, true, xs, ys, xs2, ys2, zs, zs2) -> addLists3(xs, ys, zs2)
addList2(xs, ys) -> addLists3(xs, ys, nil)

Q is empty.
We have to consider all minimal (P,Q,R)-chains.
The approximation of the Dependency Graph [13,14,18] contains 4 SCCs with 11 less nodes.

↳ QTRS
  ↳ DependencyPairsProof
    ↳ QDP
      ↳ DependencyGraphProof
        ↳ AND
QDP
            ↳ QDPOrderProof
          ↳ QDP
          ↳ QDP
          ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

INC1(s1(x)) -> INC1(x)

The TRS R consists of the following rules:

isEmpty1(cons2(x, xs)) -> false
isEmpty1(nil) -> true
isZero1(0) -> true
isZero1(s1(x)) -> false
head1(cons2(x, xs)) -> x
tail1(cons2(x, xs)) -> xs
tail1(nil) -> nil
append2(nil, x) -> cons2(x, nil)
append2(cons2(y, ys), x) -> cons2(y, append2(ys, x))
p1(s1(s1(x))) -> s1(p1(s1(x)))
p1(s1(0)) -> 0
p1(0) -> 0
inc1(s1(x)) -> s1(inc1(x))
inc1(0) -> s1(0)
addLists3(xs, ys, zs) -> if9(isEmpty1(xs), isEmpty1(ys), isZero1(head1(xs)), tail1(xs), tail1(ys), cons2(p1(head1(xs)), tail1(xs)), cons2(inc1(head1(ys)), tail1(ys)), zs, append2(zs, head1(ys)))
if9(true, true, b, xs, ys, xs2, ys2, zs, zs2) -> zs
if9(true, false, b, xs, ys, xs2, ys2, zs, zs2) -> differentLengthError
if9(false, true, b, xs, ys, xs2, ys2, zs, zs2) -> differentLengthError
if9(false, false, false, xs, ys, xs2, ys2, zs, zs2) -> addLists3(xs2, ys2, zs)
if9(false, false, true, xs, ys, xs2, ys2, zs, zs2) -> addLists3(xs, ys, zs2)
addList2(xs, ys) -> addLists3(xs, ys, nil)

Q is empty.
We have to consider all minimal (P,Q,R)-chains.
We use the reduction pair processor [13].


The following pairs can be oriented strictly and are deleted.


INC1(s1(x)) -> INC1(x)
The remaining pairs can at least be oriented weakly.
none
Used ordering: Polynomial Order [17,21] with Interpretation:

POL( INC1(x1) ) = x1


POL( s1(x1) ) = x1 + 1



The following usable rules [14] were oriented: none



↳ QTRS
  ↳ DependencyPairsProof
    ↳ QDP
      ↳ DependencyGraphProof
        ↳ AND
          ↳ QDP
            ↳ QDPOrderProof
QDP
                ↳ PisEmptyProof
          ↳ QDP
          ↳ QDP
          ↳ QDP

Q DP problem:
P is empty.
The TRS R consists of the following rules:

isEmpty1(cons2(x, xs)) -> false
isEmpty1(nil) -> true
isZero1(0) -> true
isZero1(s1(x)) -> false
head1(cons2(x, xs)) -> x
tail1(cons2(x, xs)) -> xs
tail1(nil) -> nil
append2(nil, x) -> cons2(x, nil)
append2(cons2(y, ys), x) -> cons2(y, append2(ys, x))
p1(s1(s1(x))) -> s1(p1(s1(x)))
p1(s1(0)) -> 0
p1(0) -> 0
inc1(s1(x)) -> s1(inc1(x))
inc1(0) -> s1(0)
addLists3(xs, ys, zs) -> if9(isEmpty1(xs), isEmpty1(ys), isZero1(head1(xs)), tail1(xs), tail1(ys), cons2(p1(head1(xs)), tail1(xs)), cons2(inc1(head1(ys)), tail1(ys)), zs, append2(zs, head1(ys)))
if9(true, true, b, xs, ys, xs2, ys2, zs, zs2) -> zs
if9(true, false, b, xs, ys, xs2, ys2, zs, zs2) -> differentLengthError
if9(false, true, b, xs, ys, xs2, ys2, zs, zs2) -> differentLengthError
if9(false, false, false, xs, ys, xs2, ys2, zs, zs2) -> addLists3(xs2, ys2, zs)
if9(false, false, true, xs, ys, xs2, ys2, zs, zs2) -> addLists3(xs, ys, zs2)
addList2(xs, ys) -> addLists3(xs, ys, nil)

Q is empty.
We have to consider all minimal (P,Q,R)-chains.
The TRS P is empty. Hence, there is no (P,Q,R) chain.

↳ QTRS
  ↳ DependencyPairsProof
    ↳ QDP
      ↳ DependencyGraphProof
        ↳ AND
          ↳ QDP
QDP
            ↳ QDPOrderProof
          ↳ QDP
          ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

P1(s1(s1(x))) -> P1(s1(x))

The TRS R consists of the following rules:

isEmpty1(cons2(x, xs)) -> false
isEmpty1(nil) -> true
isZero1(0) -> true
isZero1(s1(x)) -> false
head1(cons2(x, xs)) -> x
tail1(cons2(x, xs)) -> xs
tail1(nil) -> nil
append2(nil, x) -> cons2(x, nil)
append2(cons2(y, ys), x) -> cons2(y, append2(ys, x))
p1(s1(s1(x))) -> s1(p1(s1(x)))
p1(s1(0)) -> 0
p1(0) -> 0
inc1(s1(x)) -> s1(inc1(x))
inc1(0) -> s1(0)
addLists3(xs, ys, zs) -> if9(isEmpty1(xs), isEmpty1(ys), isZero1(head1(xs)), tail1(xs), tail1(ys), cons2(p1(head1(xs)), tail1(xs)), cons2(inc1(head1(ys)), tail1(ys)), zs, append2(zs, head1(ys)))
if9(true, true, b, xs, ys, xs2, ys2, zs, zs2) -> zs
if9(true, false, b, xs, ys, xs2, ys2, zs, zs2) -> differentLengthError
if9(false, true, b, xs, ys, xs2, ys2, zs, zs2) -> differentLengthError
if9(false, false, false, xs, ys, xs2, ys2, zs, zs2) -> addLists3(xs2, ys2, zs)
if9(false, false, true, xs, ys, xs2, ys2, zs, zs2) -> addLists3(xs, ys, zs2)
addList2(xs, ys) -> addLists3(xs, ys, nil)

Q is empty.
We have to consider all minimal (P,Q,R)-chains.
We use the reduction pair processor [13].


The following pairs can be oriented strictly and are deleted.


P1(s1(s1(x))) -> P1(s1(x))
The remaining pairs can at least be oriented weakly.
none
Used ordering: Polynomial Order [17,21] with Interpretation:

POL( P1(x1) ) = max{0, x1 - 1}


POL( s1(x1) ) = x1 + 1



The following usable rules [14] were oriented: none



↳ QTRS
  ↳ DependencyPairsProof
    ↳ QDP
      ↳ DependencyGraphProof
        ↳ AND
          ↳ QDP
          ↳ QDP
            ↳ QDPOrderProof
QDP
                ↳ PisEmptyProof
          ↳ QDP
          ↳ QDP

Q DP problem:
P is empty.
The TRS R consists of the following rules:

isEmpty1(cons2(x, xs)) -> false
isEmpty1(nil) -> true
isZero1(0) -> true
isZero1(s1(x)) -> false
head1(cons2(x, xs)) -> x
tail1(cons2(x, xs)) -> xs
tail1(nil) -> nil
append2(nil, x) -> cons2(x, nil)
append2(cons2(y, ys), x) -> cons2(y, append2(ys, x))
p1(s1(s1(x))) -> s1(p1(s1(x)))
p1(s1(0)) -> 0
p1(0) -> 0
inc1(s1(x)) -> s1(inc1(x))
inc1(0) -> s1(0)
addLists3(xs, ys, zs) -> if9(isEmpty1(xs), isEmpty1(ys), isZero1(head1(xs)), tail1(xs), tail1(ys), cons2(p1(head1(xs)), tail1(xs)), cons2(inc1(head1(ys)), tail1(ys)), zs, append2(zs, head1(ys)))
if9(true, true, b, xs, ys, xs2, ys2, zs, zs2) -> zs
if9(true, false, b, xs, ys, xs2, ys2, zs, zs2) -> differentLengthError
if9(false, true, b, xs, ys, xs2, ys2, zs, zs2) -> differentLengthError
if9(false, false, false, xs, ys, xs2, ys2, zs, zs2) -> addLists3(xs2, ys2, zs)
if9(false, false, true, xs, ys, xs2, ys2, zs, zs2) -> addLists3(xs, ys, zs2)
addList2(xs, ys) -> addLists3(xs, ys, nil)

Q is empty.
We have to consider all minimal (P,Q,R)-chains.
The TRS P is empty. Hence, there is no (P,Q,R) chain.

↳ QTRS
  ↳ DependencyPairsProof
    ↳ QDP
      ↳ DependencyGraphProof
        ↳ AND
          ↳ QDP
          ↳ QDP
QDP
            ↳ QDPOrderProof
          ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

APPEND2(cons2(y, ys), x) -> APPEND2(ys, x)

The TRS R consists of the following rules:

isEmpty1(cons2(x, xs)) -> false
isEmpty1(nil) -> true
isZero1(0) -> true
isZero1(s1(x)) -> false
head1(cons2(x, xs)) -> x
tail1(cons2(x, xs)) -> xs
tail1(nil) -> nil
append2(nil, x) -> cons2(x, nil)
append2(cons2(y, ys), x) -> cons2(y, append2(ys, x))
p1(s1(s1(x))) -> s1(p1(s1(x)))
p1(s1(0)) -> 0
p1(0) -> 0
inc1(s1(x)) -> s1(inc1(x))
inc1(0) -> s1(0)
addLists3(xs, ys, zs) -> if9(isEmpty1(xs), isEmpty1(ys), isZero1(head1(xs)), tail1(xs), tail1(ys), cons2(p1(head1(xs)), tail1(xs)), cons2(inc1(head1(ys)), tail1(ys)), zs, append2(zs, head1(ys)))
if9(true, true, b, xs, ys, xs2, ys2, zs, zs2) -> zs
if9(true, false, b, xs, ys, xs2, ys2, zs, zs2) -> differentLengthError
if9(false, true, b, xs, ys, xs2, ys2, zs, zs2) -> differentLengthError
if9(false, false, false, xs, ys, xs2, ys2, zs, zs2) -> addLists3(xs2, ys2, zs)
if9(false, false, true, xs, ys, xs2, ys2, zs, zs2) -> addLists3(xs, ys, zs2)
addList2(xs, ys) -> addLists3(xs, ys, nil)

Q is empty.
We have to consider all minimal (P,Q,R)-chains.
We use the reduction pair processor [13].


The following pairs can be oriented strictly and are deleted.


APPEND2(cons2(y, ys), x) -> APPEND2(ys, x)
The remaining pairs can at least be oriented weakly.
none
Used ordering: Polynomial Order [17,21] with Interpretation:

POL( APPEND2(x1, x2) ) = x1


POL( cons2(x1, x2) ) = x2 + 1



The following usable rules [14] were oriented: none



↳ QTRS
  ↳ DependencyPairsProof
    ↳ QDP
      ↳ DependencyGraphProof
        ↳ AND
          ↳ QDP
          ↳ QDP
          ↳ QDP
            ↳ QDPOrderProof
QDP
                ↳ PisEmptyProof
          ↳ QDP

Q DP problem:
P is empty.
The TRS R consists of the following rules:

isEmpty1(cons2(x, xs)) -> false
isEmpty1(nil) -> true
isZero1(0) -> true
isZero1(s1(x)) -> false
head1(cons2(x, xs)) -> x
tail1(cons2(x, xs)) -> xs
tail1(nil) -> nil
append2(nil, x) -> cons2(x, nil)
append2(cons2(y, ys), x) -> cons2(y, append2(ys, x))
p1(s1(s1(x))) -> s1(p1(s1(x)))
p1(s1(0)) -> 0
p1(0) -> 0
inc1(s1(x)) -> s1(inc1(x))
inc1(0) -> s1(0)
addLists3(xs, ys, zs) -> if9(isEmpty1(xs), isEmpty1(ys), isZero1(head1(xs)), tail1(xs), tail1(ys), cons2(p1(head1(xs)), tail1(xs)), cons2(inc1(head1(ys)), tail1(ys)), zs, append2(zs, head1(ys)))
if9(true, true, b, xs, ys, xs2, ys2, zs, zs2) -> zs
if9(true, false, b, xs, ys, xs2, ys2, zs, zs2) -> differentLengthError
if9(false, true, b, xs, ys, xs2, ys2, zs, zs2) -> differentLengthError
if9(false, false, false, xs, ys, xs2, ys2, zs, zs2) -> addLists3(xs2, ys2, zs)
if9(false, false, true, xs, ys, xs2, ys2, zs, zs2) -> addLists3(xs, ys, zs2)
addList2(xs, ys) -> addLists3(xs, ys, nil)

Q is empty.
We have to consider all minimal (P,Q,R)-chains.
The TRS P is empty. Hence, there is no (P,Q,R) chain.

↳ QTRS
  ↳ DependencyPairsProof
    ↳ QDP
      ↳ DependencyGraphProof
        ↳ AND
          ↳ QDP
          ↳ QDP
          ↳ QDP
QDP

Q DP problem:
The TRS P consists of the following rules:

IF9(false, false, true, xs, ys, xs2, ys2, zs, zs2) -> ADDLISTS3(xs, ys, zs2)
IF9(false, false, false, xs, ys, xs2, ys2, zs, zs2) -> ADDLISTS3(xs2, ys2, zs)
ADDLISTS3(xs, ys, zs) -> IF9(isEmpty1(xs), isEmpty1(ys), isZero1(head1(xs)), tail1(xs), tail1(ys), cons2(p1(head1(xs)), tail1(xs)), cons2(inc1(head1(ys)), tail1(ys)), zs, append2(zs, head1(ys)))

The TRS R consists of the following rules:

isEmpty1(cons2(x, xs)) -> false
isEmpty1(nil) -> true
isZero1(0) -> true
isZero1(s1(x)) -> false
head1(cons2(x, xs)) -> x
tail1(cons2(x, xs)) -> xs
tail1(nil) -> nil
append2(nil, x) -> cons2(x, nil)
append2(cons2(y, ys), x) -> cons2(y, append2(ys, x))
p1(s1(s1(x))) -> s1(p1(s1(x)))
p1(s1(0)) -> 0
p1(0) -> 0
inc1(s1(x)) -> s1(inc1(x))
inc1(0) -> s1(0)
addLists3(xs, ys, zs) -> if9(isEmpty1(xs), isEmpty1(ys), isZero1(head1(xs)), tail1(xs), tail1(ys), cons2(p1(head1(xs)), tail1(xs)), cons2(inc1(head1(ys)), tail1(ys)), zs, append2(zs, head1(ys)))
if9(true, true, b, xs, ys, xs2, ys2, zs, zs2) -> zs
if9(true, false, b, xs, ys, xs2, ys2, zs, zs2) -> differentLengthError
if9(false, true, b, xs, ys, xs2, ys2, zs, zs2) -> differentLengthError
if9(false, false, false, xs, ys, xs2, ys2, zs, zs2) -> addLists3(xs2, ys2, zs)
if9(false, false, true, xs, ys, xs2, ys2, zs, zs2) -> addLists3(xs, ys, zs2)
addList2(xs, ys) -> addLists3(xs, ys, nil)

Q is empty.
We have to consider all minimal (P,Q,R)-chains.